<cfsilent>
	<cfsetting requesttimeout = "300">
	<cfset actionArgs = getArguments() />
	<cfset redirect(argumentCollection=actionArgs) />
</cfsilent>

<cffunction name="getArguments" access="private" output="false" returntype="struct">
	<cfset getArgumentArgs = structCopy(url) />

	<cfloop collection="#form#" item="key">
		<cfset getArgumentArgs[key] = form[key] />
	</cfloop>

	<cfreturn getArgumentArgs />
</cffunction>

<!--- --->

<cffunction name="redirect" access="private" output="false" returntype="any">
	<cfargument name="cfc" required="true" />
	<cfargument name="method" required="true" />
	
	<cfset var local = {} />
	
	<cfif arguments.cfc contains "Service">
		<cfset local.namespace = "s" />
	<cfelseif arguments.cfc contains "Gateway">
		<cfset local.namespace = "g" />
	<cfelseif arguments.cfc contains "Controller">
		<cfset local.namespace = "c" />
	<cfelseif arguments.cfc contains "View">
		<cfset local.namespace = "v" />
	</cfif>
	
	<cfset local.returnData = application[local.namespace][arguments.cfc][arguments.method](argumentCollection=arguments) />

	<cfif structKeyExists(local,"returnData")>
		<cfreturn local.returnData />
	<cfelse>
		<cfreturn 1 />
	</cfif>

</cffunction>